Tile space user interface for mobile devices

ABSTRACT

Systems and methods for providing a user interface for mobile devices enable data and services available through the mobile device to be represented as a set of tiles maintained in a display space. The tiles provide a snapshot of the current state of content available through the mobile device without requiring any interaction by the user. The tiles and display space are customizable and can be dynamically updated to display content to a user. In addition, tiles can provide functionality, including simple tasks to a user without requiring the user to navigate away from the tile display space. Tiles can also provide quick access to start software applications. Tiles can be organized in the display space by the user or the tiles can be automatically grouped based upon associated metadata.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is an application claiming benefit under 35 U.S.C. 119(e) of U.S.Provisional Patent application Ser. No. 60/718,187 entitled “ENHANCEDPORTABLE DEVICE NAVIGATION TOOLS” and filed Sep. 16, 2005. Thisapplication is also related to co-pending U.S. patent application Ser.No. 11/424,720, entitled, “SEARCH INTERFACE FOR MOBILE DEVICES”, andfiled Jun. 16, 2006; U.S. patent application Ser. No. 11/424,713,entitled, “EXTENSIBLE, FILTERED LISTS FOR MOBILE DEVICE USER INTERFACE”,and filed Jun. 16, 2006; and U.S. patent application Ser. No.11/424,706, entitled, “CONTENT SHARING USER INTERFACE FOR MOBILEDEVICES”, and filed Jun. 16, 2006. The entireties of the above-notedapplications are incorporated by reference herein.

BACKGROUND

Mobile or portable devices have become increasingly popular andprevalent in today's society. Many users utilize a mobile device, suchas a cellphone, as their primary means of communication and carry suchdevices with them constantly. Mobile devices can include multiplefunctions such as cellular phone service, voice over Internet protocol(“VoIP”) phone service, software applications, email access, Internetcapabilities, calendar functions, music players and the like. Functions,features and capabilities have increased both the utility and complexityof mobile devices. It is likely that functions will continue to be addedto mobile devices further increasing both usefulness and intricacy.

While consumers desire additional functionality, the sheer volume ofinformation and features make it difficult for users to access commonlyused data and functions. Mobile device complexity also makes itdifficult for users to fully exploit the capabilities of such devices.The problem is exacerbated by the generally limited user interfaces ofmobile devices. Such devices are designed to be small, lightweight andeasily portable. Consequently, mobile devices typically have limiteddisplay screens, keypads, keyboards and/or other input devices. Due tothe size of the user input devices and display screens, it may bedifficult for users to enter, retrieve and view information using mobiledevices.

Users may have difficulty in accessing the information or function theydesire due to the organization of the volume and variety of informationthat may be contained in or accessed by the mobile device, as well asthe growing number of functions such devices are capable of supporting.Conventional menu structures for mobile devices require users toremember a hierarchy of functions or applications to reach the desireddata or task. Information is frequently organized based upon theapplication software that provides or manages the information.Consequently, users can be required to access information based upon thevarious software applications rather than based upon user utility. Userscan become frustrated when they are unable to locate the desiredinformation or tasks and may be unable to fully exploit the advantagesof the mobile device.

SUMMARY

The following presents a simplified summary in order to provide a basicunderstanding of some aspects of the claimed subject matter. Thissummary is not an extensive overview. It is not intended to identifykey/critical elements or to delineate the scope of the claimed subjectmatter. Its sole purpose is to present some concepts in a simplifiedform as a prelude to the more detailed description that is presentedlater.

Briefly described, the provided subject matter concerns an improved userinterface for mobile devices such as smartphones, personal digitalassistants (PDAs) and the like. An enhanced, customizable user interfacecan be updated dynamically to provide users with content withoutrequiring user interaction. Users can monitor status and/or data ofcontent accessible through the mobile device by simply observing theuser interface.

The user interface can include a set of dynamic tiles. The tiles caninclude graphics, text or any other visual data. A number of tiles canbe displayed using thumbnail views that provide minimal data. Inaddition, a tile can be selected as the active tile and displayed in anenlarged view including additional content. Tiles can be updated toreflect changes to associated content accessible through the mobiledevice. Content can be local to the mobile device or located remotely.For example, a tile can include data provided by an Internetsubscription news service. Tiles can also provide independentfunctionality, including simple tasks, to users without requiring usersto navigate away from the tile display space. In addition, tiles canprovide users with quick, direct access to launch software applicationsavailable through the mobile device.

Tiles can be positioned within a tile space. A tile space can be anyshape or size and can extend beyond the edges of a display screen of amobile device. Users can utilize a keypad, stylus or the like to pan thedisplay to view additional portions of the tile space. In addition, theactive tile can be updated based upon navigation through the tile space,allowing users to see a summary view of additional tiles.

Tiles can be positioned or placed within a tile space to optimizepresentation of content to users. Users can specifically position tileswithin the tile space. In addition, the user interface can performcertain basic organization tasks to position tiles within a tile space.For example, the user interface can reorganize tiles to remove gapsbetween tiles. The user interface can also group or cluster tiles basedupon metadata associated with the tiles. For instance, the userinterface can group tiles associated with work-related projects in thelower, left portion of the tile space while grouping tiles associatedwith a user's personal life in the upper, right portion of the tilespace.

To the accomplishment of the foregoing and related ends, certainillustrative aspects of the claimed subject matter are described hereinin connection with the following description and the annexed drawings.These aspects are indicative of various ways in which the subject mattermay be practiced, all of which are intended to be within the scope ofthe claimed subject matter. Other advantages and novel features maybecome apparent from the following detailed description when consideredin conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system for providing a tile space displayin accordance with an aspect of the subject matter disclosed herein.

FIG. 2 is a block diagram of a system for providing a tile space displayin accordance with an aspect of the subject matter disclosed herein.

FIG. 3 is an exemplary display depicting a tile space in accordance withan aspect of the subject matter disclosed herein.

FIG. 4 is an exemplary display depicting an independent tile inaccordance with an aspect of the subject matter disclosed herein.

FIG. 5 is an exemplary display depicting a content tile in accordancewith an aspect of the subject matter disclosed herein.

FIG. 6 is an exemplary display depicting a content tile in accordancewith an aspect of the subject matter disclosed herein.

FIG. 7 is an exemplary display depicting an alert in accordance with anaspect of the subject matter disclosed herein.

FIG. 8 illustrates navigation of an exemplary display in accordance withan aspect of the subject matter disclosed herein.

FIG. 9 illustrates a zoomed out display in accordance with an aspect ofthe subject matter disclosed herein.

FIG. 10 illustrates a methodology for providing a tile space inaccordance with an aspect described herein.

FIG. 11 illustrates a methodology for navigating a tile space inaccordance with an aspect described herein.

FIG. 12 illustrates a methodology for updating a tile space inaccordance with an aspect described herein.

FIG. 13 illustrates a methodology for updating a tile space based upon auser profile in accordance with an aspect described herein.

FIG. 14 is a schematic block diagram illustrating a suitable operatingenvironment.

FIG. 15 is a schematic block diagram of a sample-computing environment.

DETAILED DESCRIPTION

The various aspects of the subject matter described herein are nowdescribed with reference to the annexed drawings, wherein like numeralsrefer to like or corresponding elements throughout. It should beunderstood, however, that the drawings and detailed description relatingthereto are not intended to limit the claimed subject matter to theparticular form disclosed. Rather, the intention is to cover allmodifications, equivalents, and alternatives falling within the spiritand scope of the claimed subject matter.

As used herein, the terms “component,” “system” and the like areintended to refer to a computer-related entity, either hardware, acombination of hardware and software, software, or software inexecution. For example, a component may be, but is not limited to being,a process running on a processor, a processor, an object, an executable,a thread of execution, a program, and/or a computer. By way ofillustration, both an application running on computer and the computercan be a component. One or more components may reside within a processand/or thread of execution and a component may be localized on onecomputer and/or distributed between two or more computers.

The word “exemplary” is used herein to mean serving as an example,instance, or illustration. The subject matter disclosed herein is notlimited by such examples. In addition, any aspect or design describedherein as “exemplary” is not necessarily to be construed as preferred oradvantageous over other aspects or designs.

Content on mobile devices can take many forms including, but not limitedto, contact information, calendar items, mail, music, photos, documents,and tasks or actions. Access to content including data and availabletasks is typically provided only through software applications specificto the data type of the content, such as an application used to createor render the specific content data type. For example, to read emailfrom a contact, a user may be required to navigate to and open an emailapplication. To telephone that same contact with a question regardingthat email, the user may be required to navigate to the space where thatcontact's communication details are visible (e.g., a contact cardspecifying contact specific information). Finding relevant informationcan require first determining the appropriate software application,opening the application and searching for the relevant informationwithin the application. To view mail from a specific sender, the usermay be required to navigate to an email application and search by thesender's name.

An enhanced user interface can include a tile space that can function asa home screen for a user, providing relevant content and quick access toapplications. The tile space can provide users with a view or dashboardto monitor the current state of a subset of content obtainable throughthe mobile device. Many of the most frequently used functions or datacan be accessed without navigating away from the tile space. The tilespace can be capable of managing any number of tiles. One or more setsof tiles can be customized to provide for a particular user.

Individual tiles can provide users with access to applications,application content, remote content and/or independent functionality.One or more tiles can provide a user with the data and tasks most likelyto be relevant to the particular user without requiring the user toleave the tile space. Typically, tiles are represented in a small orthumbnail view that provides some minimal amount of information. Onetile, referred to herein as the active tile, can be shown in an expandedor summary view. An expanded view of the active tile allows additionalinformation or functions to be provided to a user without necessitatingnavigation from the tile space to an application space. Users can selectan active tile from the set of tiles managed by a tile space.

Referring now to FIG. 1, a display system 100 for a mobile device inaccordance with an aspect of the subject matter disclosed herein isillustrated. The system 100 can include a tile space component 102 thatreceives input from one or more interface components 104 and changes theview of a tile space on a mobile device (not shown) via a displaycomponent 106 according to such input. The system 100 can operate on anytype of mobile device, including, but not limited to, a PDA, textmessenger, cellular phone, pocket personal computer, smartphone,ultra-mobile tablet PC and the like. Input from the interface component104 can include content obtained from one or more software applications.Input can also include user input generated using a touch screen,keypad, joystick, or any other type of control. A single interfacecomponent 104 is illustrated herein for simplicity; however, as shown inFIG. 2, multiple interface components can be utilized including separateinterface components for user input and input from applications.

The interface component 104 can include or can be connected to a contentsharing system capable of facilitating sharing of content from multiplesoftware applications. A content sharing system can provide a standardinterface between clients such as the interface component 104 andapplications providing content. This interface ensures that clients neednot have knowledge of the underlying data structures or even theidentity of applications to access content.

A content sharing system can manage the supply of data and simple tasksassociated with the data to the interface component 104. Applicationscan register new categories or classifications of data and associatedtasks with the content sharing system, automatically allowing theinterface component 104 to access the new data categories and tasks.Applications can also provide the content sharing system with datasupplier components capable of retrieving data from the underlying datastores of the applications. In addition, applications can provide taskexecutors capable of executing actions or tasks on data items ofselected data types or categories. The central content sharing systemcan provide data and tasks to clients in response to queries orrequests.

The interface component 104 can obtain data and associated tasks bygenerating a query specifying the category or type of data requested aswell as context used to identify relevant data of the requestedcategory. A set of data requests based upon the query from the interfacecomponent 104 can be distributed to data supplier components for varioussoftware applications. The data supplier components can retrieve therelevant data from the underlying data stores of associated applicationsand the retrieved results can be assembled and returned to the interfacecomponent 104. The query, data requests and query results can bespecified in a declarative language, such as extended markup language(XML) to facilitate transfer of data without requiring knowledge of datastructures by the client.

In another embodiment, the interface component 104 can interact directlywith one or more software applications. Applications can notify theinterface component 104 of a change to content and provide updatedcontent directly to the interface component 104. In addition, theinterface component can poll or request content from one or moreapplications either dynamically or periodically.

The tile space component 102 can include an input component 108 thatobtains, receives and/or requests input including user input and contentfrom the interface component 104. The input can be used to generate theview of the tile space. In addition, the tile space component 102 caninclude a tile manager component 110 that manages a set of tiles thatcan be displayed in a tile space.

Referring now to FIG. 2, the display system 100 can include multipleinterface components that provide input to the tile space component 102.The display system 100 can include a user interface component 202 thatprovides for input from a user. The system can also include a localinterface component 204 that provides local content including data andtasks from software applications local to the mobile device. Inaddition, the system can include a remote interface component 206 thatallows for input from remote sources. For instance, a remote interfacecomponent 206 can obtain data from an Internet source. One or more ofthe interface components can be combined into a single interfacecomponent.

The tile manager component 110 can include a display tile component 208and an available tile component 210. An available tile component 210 canmanage a set of all tiles currently available for inclusion in the tilespace. The set of tiles currently managed in the tile space are referredto herein as the display tiles and are managed by the display tilecomponent 208. The display tiles can be a subset of the set of availabletiles offered by the available tile component 210. For example, a largenumber of possible tiles can be generated either by users, vendors orother entities. Users can select from this large set of available tilesto determine tiles to include within the set of display tiles. Users cancustomize the set of available tiles and/or display tiles by adding ordeleting tiles. The set of available tiles can be identical to thedisplay tiles if all available tiles are included within the tile space.

Users can generate and/or utilize one or more user profiles that specifyone or more tiles from the available tiles to be included in the set ofdisplay tiles. The profile component 212 can manage one or more userprofiles. Different user profiles can be generated to reflect thevarying needs or interests of a user. Profiles can be generated basedupon location, time of day, day of week, user context or any other usercondition that can effect the set of tiles most likely to be relevant tothe user. For example, a user can specify a work profile that includes aset of tiles specific to the user's occupation. The user can also createa separate user profile for use outside of work. For instance, users cancreate weekend profiles including tiles associated with entertainmentinformation, personal contacts and the like. Users can also createprofiles specific to geographic locations. Geographic profiles can beparticularly useful for users that travel frequently. A user profile canalso effect other mobile device or user interface settings and need notbe limited to specification of display tiles.

Selection of a user profile can update, reorganize, add or deletedisplay tiles. Users can view a list of possible user profiles andselect the most appropriate profile for their current context or state.Alternatively, a user profile can be automatically selected based uponone or more predetermined conditions, such as time of day or day ofweek. For example, a determination can be made that it is a weekend dayand a weekend user profile can be utilized to select or organize a setof display tiles. During weekdays, an alternate set of tiles can bedisplayed based upon a weekday profile. User profiles can also beselected based at least in part upon geographic location. If the mobiledevice is capable of determining location, whether using a globalpositioning system (GPS) or any other manner of determining location, aprofile can be selected based upon location of the mobile device. Themobile device can determine if the user is at home, at work or on traveland select the most appropriate user profile. A user can override anyuser profile selections either by electing a different user profile orby individually adding and/or deleting tiles from the current set ofdisplay tiles.

The tile manager component 110 can include a navigation component 214that controls movement through the tile space. The tile space can extendbeyond the limits of the display screen of the mobile device. To viewportions of the tile space not currently shown on a display screen auser can indicate a direction to navigate within the tile space via theuser interface component 202. The navigation component 214 can determinethe tiles in the tile space currently visible and track and update thetiles. Navigation can update the active tile. Typically only one tile isactive at any one time; the remainder of the tiles is displayed in abackground or thumbnail view. Navigating through the tile space changesthe tile that has focus, updating the active tile shown in the summaryview.

The navigation component 214 can automatically control navigationthrough the tile space. For example, the navigation component 214 canautomatically navigate to the center of the tile space upon start up. Inaddition, the navigation component 214 can automatically navigate todisplay tiles with updated content

In addition, the tile manager component 110 can include a tile positioncomponent 216 that controls the placement of tiles within the tilespace. Tiles can be positioned within the tile space using a variety ofmethods. Users can specify the position of any or all tiles. Inaddition, the tile position component 216 can automatically performcertain basic organization operations. For example, the tile positioncomponent 216 can prevent a tile from becoming separated from theremainder of the tiles within the tile space by automatically adding ormoving tiles adjacent to existing tiles, if any, and removing emptyspaces between tiles.

The tile position component 216 can group or cluster related tileswithin the tile space. The tile position component 216 can utilizemetadata associated with tiles to position like tiles in proximity toeach other. Tiles can be grouped based upon user generatedclassifications and/or metadata. For instance, a user can classify allwork-related tiles with one code and classify personal contacts with asecond, separate code, thereby creating two distinct clusters of tilesin the tile space. Users can also specify portions of the tile spaceassociated with the classifications. For instance, work-related tilescan be clustered in the upper left portion of the tile space, whilepersonal contacts can be clustered in the bottom right portion of thetile space. Tiles can also be clustered by date of creation, type ofdata managed by the tile or any other data associated with a tile.

Referring now to FIG. 3, an exemplary user interface display 300including a view of a tile space is illustrated. The user interfacedisplay 300 can include a title bar 302 that can include icons, imagesand/or text indicating the current time, battery power, connectivity orany other status indicators for the mobile device. The user interfacedisplay 300 can also include a view of a tile space 304. A view of thetile space 304 can include all or a portion of the tile space displayedon the user interface display 300. The tile space 304 can be representedas a grid of rectangular graphic tiles. Each tile can have two separatevisual representations, active and background. The tile space 304 caninclude one or more tiles 306 in background or thumbnail view. A singlebackground tile 306 is numbered here for simplicity, however as shown inFIG. 3, the tile space 304 can include a plurality of background tiles306.

The tile space 304 can also include a tile in active or summary view308. The tile currently in focus is referred to as the active tile 308,shown in summary view. The active tile 308 can include additionalinformation, function and features not available when the tile is shownin background view. For example, a background tile 306 associated withweather information can include the current temperature and conditionsin background view. The active or summary view of the same tile canprovide additional weather information such as a three day forecast.

In addition, the user interface display 300 can include a softkey bar310 including one or more softkey functions labels (e.g. Home, Optionsand More). A softkey is typically a button located proximate to thedisplay space. Generally, the function of the button is defined by thesoftkey function label shown near the button on the display space. Thecontrols and features illustrated in FIG. 3 are exemplary. Alternativeor additional controls and features can be included in a user interfacedisplay 300.

The tile space 304, background tiles 306 and active tile 308 can presentdata and tasks to a user at a central location. In addition, tiles canprovide users with information without requiring the user to leave thetile space 304. For instance, even in background view the weather tile306 can provide a user with weather information at a glance (e.g.,current temperature and conditions). Additional information can beobtained by navigating to the weather tile 306. The user is not requiredto leave the tile space 304 to obtain the additional information.Moreover, tiles are not limited to simply providing content. Tiles caninclude various functions, features and capabilities, described infurther detail below.

Referring now to FIG. 4, an exemplary display 400 including anindependent tile is illustrated. The tile space 304 can support avariety of tile types, including an independent tile 402, shown here inactive or summary view. Independent tiles reside only in tile space andhave no link to content or other applications either local to the mobiledevice or remote. Independent tiles offer functionality withoutrequiring navigation away from the tile space. The independent tile 402of FIG. 4 provides an alarm function. The alarm can be set, cancelled,monitored and responded to without leaving the tile space 304. Users canutilize the alarm tile 402 to track the amount of time left in a parkingmeter. A background view of the tile can include text indicating thetime remaining before the alarm sounds.

Independent tiles can host controls with which the user can interact topreclude requiring the user to navigate away from the tile space to anapplication. For example, an independent tile can provide a calculatorfunction. A keypad for a mobile device can provide users with theability to enter numbers. The calculator tile can utilize basic controlssuch as on screen buttons to implement operators (e.g., +, −, / or *).In another example, an independent tile can provide a simple messagingfunction.

Referring now to FIG. 5, an exemplary display 500 including a contenttile 502, shown here in summary view, is illustrated. Content tiles candisplay or represent content provided or maintained by a softwareapplication local to the mobile device. For example, the mobile devicecan include a contact software application that maintains a list ofcontacts with associated contact cards. Contacts are generallyindividuals or entities and contact cards generally include informationassociated with a contact (e.g., name, title, telephone number, emailaddress, physical address and the like). A content tile 502 can act as ashortcut to a contact card included in the contact list maintained bythe contact software application on the mobile device. If the contenttile 502 is a background tile, the thumbnail view can include an imageof the contact, text or any other information regarding the contact. Thecontent tile 502 can include a context indicator for the contact. Thecontext indicator can show the current state of the contact such aswhether the contact is online, the contact's location or any otherproperty of the contact. In summary or background view the content tilefor the contact can include graphics, text and any other informationassociated with the contact.

A content tile 502 can also provide the user with the ability to launchthe software application associated with the content. Users can viewlimited content information from a background tile. Users can viewadditional content information using the summary view. However, the usermay wish to perform additional functions, such as updating the contactcard. The content tile 502 can provide a user with the ability to launchthe full contact application directly from the tile space, withoutrequiring the user to navigate to a menu of available applications.

Referring now to FIG. 6, an exemplary display 600 including a contenttile 602 associated with remote content, shown here in summary view, isillustrated. Content can be retrieved or obtained from a remote source,such as a server. Vendors of services or data can generate and offertiles to users. For example, a vendor that maintains an online auctionwebsite can provide an auction specific tile to a user, such as contenttile 602. The auction tile 602 can track the current status of anyauctions in which the user is participating, indicating auctioninformation such as the current bid or time remaining in an auction. Thecontent tile 602 associated with the auction can update dynamically toreflect content obtained from the remote source (e.g., additional bidsby the user and expiration of item auctions). Tiles can be dynamicallyupdated based upon updated content without direct action by the user.

Content tiles can obtain a variety of content from remote sources. Forinstance, a user may subscribe to a news service. A tile can display asubset of news provided by the news service and/or as well as anindication of important news bulletins. In a further example, a tile canprovide user with access to one or more maps frequently utilized by theuser. Typically, geographic data sets such as maps are large. A mobiledevice may not have the capacity to store multiple maps. Here, a tilecan provide quick access to a selected set of maps stored in a remotedata store.

Vendors can provide tiles to users as a service. Users can be requiredto subscribe to the service to obtain content. Alternatively, vendorscan provide tiles to users to perform targeted advertising. For example,a clothing retailer can provide a tile that includes data correspondingto online coupons based upon the user's past purchases. In addition, theretailer can provide additional information such as new productstailored to the users buying patterns. In addition, content of the tilecan be updated based upon user location. For instance, the providedcoupons can be selected based upon proximity of the user to a specificstore. Other content accessible from the tile can include informationregarding the closest retailer location.

Content tiles can also provide the ability to directly access anassociated remote service without having to navigate to a menu ofapplications. Looking again at the example regarding the online auction,after viewing the summary view, a user can elect to select the tile andaccess the online auction. An online auction browser can be launchedoffering the user greater ability to view and interact with desiredcontent, in this case the online auction.

The tile space can also include one or more application tiles. Anapplication tile provides a user with quick, direct access to anapplication. Activation of an application tile launches the associatedapplication without requiring a user to navigate to a list ofapplications to search and select the desired application. For instance,an application tile can provide a link to a game or other application.Thumbnail and summary views for application tiles can include graphics,text or other suitable visual cues to allow a user to easily identifythe application.

The tile space can also include shortcut tiles. Shortcut tiles canprovide shortcuts or links to any other location on the mobile device.For example, the mobile device can include another user interface fornavigating mobile device content. Users can utilize a shortcut tile toleave the tile space and navigate to the alternate user interface.

Tiles can include any combination of text, graphic images, hyperlinks orany other visual representation in both summary view and thumbnail view.For example, as shown in FIG. 3, icon, graphic images and/or text can berendered within the same tile. Further, an image can be used as thebackground of the tile with text overlaying the image. Each individualtile can include multiple cells or columns that can be populated withdata of varying data types. For instance, a messaging tile can include acolumn or cell for an icon that can reflect the method of communication(e.g., voicemail or text message), a cell for text including the messagecontent and a cell for text including the sender name. Different columnsor cells can have separate tasks associated with the individual columns.Accordingly, selection of an icon within a tile can generate differenttask options than selection of the sender text in the same tile. Inaddition, tiles can include audio cues or data. For example, audio datamay be triggered when a tile is active or selected.

Referring now to FIG. 7, an exemplary display 700 including a backgroundtile 702 and an active tile 704, including alerts or notifications, isillustrated. A notification or alert, as used herein, is an indicator ofa change in state, such as updated or additional content. Notificationscan include changes to text, text color, font, background or othervisual cues utilized to make users aware of changes associated with atile. A tile can include an alert or notification in either summary orthumbnail views. For example, the border color of background tile 702can be modified to indicate change. A user can obtain additionalinformation by navigating to the background tile 702 and observing thesummary view of the tile. Active tile 704 can also include one or morealerts or notifications of change to associated content. For example,the active tile 704 includes icons representing telephone messages andemail messages. Alerts can be represented as text, shown here asparenthetical numbers adjacent to the icons. The text alerts canindicate newly received voicemail and email messages. Notifications andalerts are not limited to the examples illustrated herein. Alerts andnotifications can include any audio, visual or tactile indicia, or anycombination thereof.

The tiles described herein are managed in a tile space. The tile spacecan include any number of tiles. The tile space can be a fixed,predetermined size. Alternatively, users can specify the size of thetile space. In yet another alternative, the size of the tile space canvary depending upon the number and location of tiles positioned withinthe tile space. The tile space can dynamically grow and shrink as tilesare added and deleted. Although the tile space has been illustratedherein as a grid of rectangular tiles, neither the tile space nor thetiles are limited to a rectangular form. Generally, tiles can besimilarly sized to facilitate tile management and usability; however,tiles can vary in size. In addition, tiles have been depicted at evenlyspaced intervals; however, the tile space can allow random or unevendistribution of tiles. Any arrangement of tiles that is useful to userscan be utilized.

Referring now to FIG. 8, navigation within a tile space display isillustrated. As described above, the tile space can be of any size ordimension. Consequently, the tile space can extend beyond the borders ofthe display screen of the mobile device. As a user provides inputthrough the user interface, the tile space component, in particular thenavigation component, can communicate the necessary data to the displaycomponent, which can respond by changing the view of the tile space. Forinstance, suppose that the user indicates movement downward toward thebottom of the display screen. In response, the display component canshift the view downward to reveal tiles that were previously off thescreen. In addition, the tile in active view can be updated. Movementwithin the tile space need not be limited to simple vertical orhorizontal panning.

The tile space can facilitate navigation through the tile spaceproviding for wrapping or warping at the edges of the tile space. Forexample, if a user continues to indicate movement to the right withinthe tile space, eventually the user will encounter the edge of the tilespace. However, the tile space can warp or wrap to the leftmost edge ofthe tile space. Consequently, the tile space can form a continuous ringor loop. By continuing to indicate movement to the right, a user willeventually return to the initial portion of the tile space.Alternatively, the tile space can wrap or warp in the verticaldirection.

Zones or regions can be defined within the tile space to assist innavigation of the tile space. For example, the tile space can be dividedinto quadrants with a distinct background color can be chosen for eachquadrant. This pattern of background colors can allow users to quicklyidentify their location within the tile space. A predefined set of zonesor quadrants can provide users with any easy method for establishinglocation. However, any background pattern that allows users to orientwithin the tile space can be utilized.

The appearance of the tile space and tiles can also be customizable.Color schemes, themes and/or skins can be selected by the user topersonalize the appearance of the tiles, the tile space or any portionthereof. A user can customize appearance of tile space and tiles basedupon aesthetic preferences or to enhance usability. For instance,individual tile spaces, tile space zones or tiles can have separatecolors, themes or skins to allow a user to identify a tile, tile spaceor location within a tile space at a glance.

The user interface can enhance navigation of the tile space by providingusers with a method for returning to a home location or tile, such asthe center or center tile of the tile space. For example, the userinterface can include a button that immediately jumps or warps to thetile space home. Return to the tile space home can be triggered using abutton, a stylus or any other method of input for the mobile device.

Referring now to FIG. 9, an exemplary display 900 depicting a zoomed outdisplay of the tile space is illustrated. The navigation component canprovide a zoom function. Zooming out allows a user to determine currentlocation within the tile space. While in the zoom out view, the user canselect an alternate portion of the tile space for viewing. Afterselecting a portion of the tile space, the user can elect to zoom in. Atthat point the display component will update the display to view theportion of the tile space selected by the user. During zoom out, smallerrepresentations of tiles can be used to allow for the display ofadditional tiles within the display screen of the mobile device. Thezoom out display need not include an active tile. The smaller tilerepresentations can include graphics or any visual indicia. In addition,a display screen indicator (not shown) can be illustrated on the screen.The display screen indicator can be drawn as a box or border showing theportion of the tile space to be displayed upon zoom in. By indicatingmovement, the user can reposition the display screen indicator withinthe tile space and thereby update the portion of the tile space to bedisplayed. Alternatively, the user can select a tile and on zoom in, theselected tile can be displayed as the active tile, centered in themobile device display screen.

Tiles can be organized within the tile space in any manner that enhancesusability for a user. For example, users can manually place or positioneach tile within the tile space. Tiles associated with a class ofinformation can be grouped together. For example, a user can haveseveral tiles devoted to persons. The user may wish to group all suchtiles within the tile space. Consequently, the user can navigate to theportion of the tile space containing the tiles devoted to people todetermine the status of all of the contacts at one time. Groupingrelated tiles can be used in combination with the zones or quadrantsdescribed above. For example, the users may elect to position allcontact tiles within the upper left quadrant of the tile space.Work-related tiles can be grouped in the bottom right quadrant of thetile space, and so forth. Consequently, background color can indicatenot only location within the tile space, but also the type of tile.

Alternatively or additionally, tile position component can automaticallyorganize or place tiles. The tile position component can inferappropriate groups or clusters of tiles based upon the class ofinformation reference by the tiles (e.g., contacts, games and the like),or by any other metadata associated with a tile. Tiles can have agravity or magnetism based upon any metadata such as tile origin, tilecontent, user classification of the tile or any other data. Like tilescan gravitate toward each other based upon this gravity or magnetism.Tile magnetism can be used in combination with user classifications orselections to maintain order and organization within the tile space. Inparticular, as tiles are deleted and added to the tile space, tileclustering using magnetism can facilitate maintaining order within thetile space. Automatic tile management can help prevent cluttering andrandomization of the tile space.

The aforementioned systems have been described with respect tointeraction between several components. It should be appreciated thatsuch systems and components can include those components orsub-components specified therein, some of the specified components orsub-components, and/or additional components. Sub-components could alsobe implemented as components communicatively coupled to other componentsrather than included within parent components. Additionally, it shouldbe noted that one or more components may be combined into a singlecomponent providing aggregate functionality or divided into severalsub-components. The components may also interact with one or more othercomponents not specifically described herein but known by those of skillin the art.

Furthermore, as will be appreciated various portions of the disclosedsystems above and methods below may include or consist of artificialintelligence or knowledge or rule based components, sub-components,processes, means, methodologies, or mechanisms (e.g., support vectormachines, neural networks, expert systems, Bayesian belief networks,fuzzy logic, data fusion engines, classifiers . . . ). Such components,inter alia, can automate certain mechanisms or processes performedthereby to make portions of the systems and methods more adaptive aswell as efficient and intelligent.

In view of the exemplary systems described supra, methodologies that maybe implemented in accordance with the disclosed subject matter will bebetter appreciated with reference to the flowcharts of FIGS. 10-13.While for purposes of simplicity of explanation, the methodologies areshown and described as a series of blocks, it is to be understood andappreciated that the claimed subject matter is not limited by the orderof the blocks, as some blocks may occur in different orders and/orconcurrently with other blocks from what is depicted and describedherein. Moreover, not all illustrated blocks may be required toimplement the methodologies described hereinafter.

Additionally, it should be further appreciated that the methodologiesdisclosed hereinafter and throughout this specification are capable ofbeing stored on an article of manufacture to facilitate transporting andtransferring such methodologies to computers. The term article ofmanufacture, as used, is intended to encompass a computer programaccessible from any computer-readable device, carrier, or media.

Referring now to FIG. 10, a methodology for updating a tile space inaccordance with an aspect described herein is illustrated. At 1002, atile space is generated for a mobile device. The tile space can be ofany size or configuration, such as a rectangular grid or a continuousloop. The tile space can be populated with one or more tiles at 1004.The tiles can be placed within the tile space according to thespecifications of a user. Alternatively or additionally, tiles can beplaced in the tile space according to tile parameters, such as classesof data associated with the tiles. The tile space can be larger than theavailable screen of the mobile device. Accordingly, a view of the tilespace can include a selected portion of the tile space. The portion ofthe tile space shown in the mobile device screen can be determined basedupon user input. Alternatively, a default portion of the tile space canbe shown. A view of the tile space can be displayed on the screen of themobile device at 1006.

Referring now to FIG. 11, a methodology for updating a tile space inresponse to user input in accordance with an aspect described herein isillustrated. At 1102, user input is received. User input can be providedusing a keypad, an on-screen button, a joystick and the like. Forexample, with a multi-directional pad either on-screen or mapped to akeypad or joystick, the user can nudge or move in a desired direction tosee other tiles or collections of tiles. The method navigates throughthe tile space in accordance with user input at 1104. Based uponnavigation of the tile space, the active tile and the background tilesvisible on screen can be determined. The view dependent at least in partupon the user's input can be displayed at 1106.

Referring now to FIG. 12, a methodology for updating a tile space inaccordance with an aspect described herein is illustrated. At 1202, anupdate of the tiles, including both the active tile and the backgroundtiles, is triggered. Updates can be triggered by user input such asaddition, deletion or modification of tiles. Tiles can also be updatedperiodically. Tile updates can also be triggered by changes in contentassociated with the tiles. The content associated with a tile can beobtained at 1204. Content can be obtained upon request. At 1206, thetiles and tile space can be updated based upon the updated content. At1208, a determination is made as to whether there are additional tilesfor which updated content should be retrieved. If yes, the methodreturns to 1204 and updated information is obtained for the next tile.If no, the display can be updated at 1210 to show the updated tilespace.

Referring now to FIG. 13, a methodology for updating a tile space basedupon a user profile in accordance with an aspect described herein isillustrated. At 1302, a user profile can be selected from one or morepossible user profiles. User profiles can define the tiles available fordisplay on the mobile device and can be specified to provide the userwith relevant content based upon the user's context. Selection of a userprofile can be based upon location of the mobile device, time of day,day of the week or any other relevant information. At 1304, the tiles tobe displayed are selected based upon the user profile. The view of tilespace is determined at 1306. For example, the display tiles can includea default tile, such that the display is centered on the default tile.At 1308, the tile space can be updated in accordance with the selecteduser profile.

In order to provide a context for the various aspects of the disclosedsubject matter, FIGS. 14 and 15 as well as the following discussion areintended to provide a brief, general description of a suitableenvironment in which the various aspects of the disclosed subject mattermay be implemented. While the subject matter has been described above inthe general context of computer-executable instructions of a computerprogram that runs on a mobile device including a computer and/orcomputers, those skilled in the art will recognize that the innovationsdescribed herein also may be implemented in combination with otherprogram modules or software applications. Generally, program modulesinclude routines, programs, components, data structures, etc. thatperform particular tasks and/or implement particular abstract datatypes. Moreover, those skilled in the art will appreciate that theinventive methods may be practiced with other computer systemconfigurations, including single-processor or multiprocessor computersystems, mini-computing devices, mainframe computers, as well aspersonal computers, hand-held computing devices (e.g., PDA, phone, watch. . . ), microprocessor-based or programmable consumer or industrialelectronics, and the like. The illustrated aspects may also be practicedin distributed computing environments where tasks are performed byremote processing devices that are linked through a communicationsnetwork. However, some, if not all aspects of the subject matterdescribed herein can be practiced on stand-alone computers, includingmobile devices. In a distributed computing environment, program modulesmay be located in both local and remote memory storage devices.

With reference again to FIG. 14, the exemplary environment 1400 forimplementing various aspects of the embodiments includes a mobile deviceor computer 1402, the computer 1402 including a processing unit 1404, asystem memory 1406 and a system bus 1408. The system bus 1408 couplessystem components including, but not limited to, the system memory 1406to the processing unit 1404. The processing unit 1404 can be any ofvarious commercially available processors. Dual microprocessors andother multi-processor architectures may also be employed as theprocessing unit 1404.

The system memory 1406 includes read-only memory (ROM) 1410 and randomaccess memory (RAM) 1412. A basic input/output system (BIOS) is storedin a non-volatile memory 1410 such as ROM, EPROM, EEPROM, which BIOScontains the basic routines that help to transfer information betweenelements within the computer 1402, such as during start-up. The RAM 1412can also include a high-speed RAM such as static RAM for caching data.

The computer or mobile device 1402 further includes an internal harddisk drive (HDD) 1414 (e.g., EIDE, SATA), which internal hard disk drive1414 may also be configured for external use in a suitable chassis (notshown), a magnetic floppy disk drive (FDD) 1416, (e.g., to read from orwrite to a removable diskette 1418) and an optical disk drive 1420,(e.g., reading a CD-ROM disk 1422 or, to read from or write to otherhigh capacity optical media such as the DVD). The hard disk drive 1414,magnetic disk drive 1416 and optical disk drive 1420 can be connected tothe system bus 1408 by a hard disk drive interface 1424, a magnetic diskdrive interface 1426 and an optical drive interface 1428, respectively.The interface 1424 for external drive implementations includes at leastone or both of Universal Serial Bus (USB) and IEEE 1494 interfacetechnologies. Other external drive connection technologies are withincontemplation of the subject systems and methods.

The drives and their associated computer-readable media providenonvolatile storage of data, data structures, computer-executableinstructions, and so forth. Consequently, the tile instructions can bestored using the drives and their associated computer-readable media.For the computer 1402, the drives and media accommodate the storage ofany data in a suitable digital format. Although the description ofcomputer-readable media above refers to a HDD, a removable magneticdiskette, and a removable optical media such as a CD or DVD, it shouldbe appreciated by those skilled in the art that other types of mediathat are readable by a computer, may be used.

A number of program modules can be stored in the drives and RAM 1412,including an operating system 1430, one or more application programs1432, other program modules 1434 and program data 1436. The applicationprograms 1432 can provide content for the tiles. All or portions of theoperating system, applications, modules, and/or data can also be cachedin the RAM 1412. It is appreciated that the systems and methods can beimplemented with various commercially available operating systems orcombinations of operating systems.

A user can enter commands and information into the computer 1402 throughone or more wired/wireless input devices, e.g. a keyboard 1438 and apointing device, such as a mouse 1440. Other input devices (not shown)may include a microphone, an IR remote control, a joystick, a game pad,a stylus pen, touch screen, or the like. These and other input devicesare often connected to the processing unit 1404 through an input deviceinterface 1442 that is coupled to the system bus 1408, but can beconnected by other interfaces, such as a parallel port, an IEEE 1494serial port, a game port, a USB port, an IR interface, etc. A displaydevice 1444 can be used to provide a set of tiles to a user. The displaydevices can be connected to the system bus 1408 via an interface, suchas a video adapter 1446.

The mobile device or computer 1402 may operate in a networkedenvironment using logical connections via wired and/or wirelesscommunications to one or more remote computers, such as a remotecomputer(s) 1448. For example, the tile instructions can be local to thecomputer 1402 and software applications can be located remotely on aremote computer 1448. The remote computer(s) 1448 can be a workstation,a server computer, a router, a personal computer, portable computer,microprocessor-based entertainment appliance, a peer device or othercommon network node, and typically includes many or all of the elementsdescribed relative to the computer 1402, although, for purposes ofbrevity, only a memory/storage device 1450 is illustrated. The logicalconnections depicted include wired/wireless connectivity to a local areanetwork (LAN) 1452 and/or larger networks, e.g. a wide area network(WAN) 1454. Such LAN and WAN networking environments are commonplace inoffices and companies, and facilitate enterprise-wide computer networks,such as intranets, all of which may connect to a global communicationsnetwork, e.g., the Internet.

When used in a LAN networking environment, the computer 1402 isconnected to the local network 1452 through a wired and/or wirelesscommunication network interface or adapter 1456. The adaptor 1456 mayfacilitate wired or wireless communication to the LAN 1452, which mayalso include a wireless access point disposed thereon for communicatingwith the wireless adaptor 1456.

When used in a WAN networking environment, the computer 1402 can includea modem 1458, or is connected to a communications server on the WAN1454, or has other means for establishing communications over the WAN1454, such as by way of the Internet. The modem 1458, which can beinternal or external and a wired or wireless device, is connected to thesystem bus 1408 via the serial port interface 1442. In a networkedenvironment, program modules depicted relative to the computer 1402, orportions thereof, can be stored in the remote memory/storage device1450. It will be appreciated that the network connections shown areexemplary and other means of establishing a communications link betweenthe computers can be used.

The computer 1402 is operable to communicate with any wireless devicesor entities operatively disposed in wireless communication, e.g., aprinter, scanner, desktop and/or portable computer, PDA, communicationssatellite, any piece of equipment or location associated with awirelessly detectable tag (e.g. a kiosk, news stand, restroom), andtelephone. The wireless devices or entities include at least Wi-Fi andBluetooth™ wireless technologies. Thus, the communication can be apredefined structure as with a conventional network or simply an ad hoccommunication between at least two devices.

Wi-Fi, or Wireless Fidelity, allows connection to the Internet from acouch at home, a bed in a hotel room, or a conference room at work,without wires. Wi-Fi is a wireless technology similar to that used in acell phone that enables such devices, e.g., computers, to send andreceive data indoors and out; anywhere within the range of a basestation. Wi-Fi networks use radio technologies called IEEE 802.11 (a, b,g, etc.) to provide secure, reliable, fast wireless connectivity. AWi-Fi network can be used to connect computers to each other, to theInternet, and to wired networks (which use IEEE 802.3 or Ethernet).Wi-Fi networks operate in the unlicensed 2.4 and 5 GHz radio bands, atan 11 Mbps (802.11a) or 54 Mbps (802.11b) data rate, for example, orwith products that contain both bands (dual band), so the networks canprovide real-world performance similar to the basic 10BaseT wiredEthernet networks used in many offices.

FIG. 15 is a schematic block diagram of a sample environment 1500 withwhich the systems and methods described herein can interact. The system1500 includes one or more mobile device(s) 1502. The mobile device(s)1502 can be hardware and/or software (e.g. threads, processes, computingdevices). The system 1500 also includes one or more server(s) 1504.Thus, system 1500 can correspond to a two-tier client server model or amulti-tier model (e.g., client, middle tier server, data server),amongst other models. The server(s) 1504 can also be hardware and/orsoftware (e.g., threads, processes, computing devices). One possiblecommunication between a mobile device 1502 and a server 1504 may be inthe form of a data packet adapted to be transmitted between two or morecomputer processes. The system 1500 includes a communication framework1506 that can be employed to facilitate communications between themobile device(s) 1502 and the server(s) 1504. The mobile device(s) 1502are operably connected to one or more data store(s) 1508 that can beemployed to store information local to the mobile device(s) 1502.Similarly, the server(s) 1504 are operably connected to one or moreserver data store(s) 1510 that can be employed to store informationlocal to the servers 1504.

The disclosed subject matter may be implemented as a system, method,apparatus, or article of manufacture using standard programming and/orengineering techniques to produce software, firmware, hardware, or anycombination thereof to control a computer or processor based device toimplement aspects detailed herein. The term “article of manufacture” (oralternatively, “computer program product”) as used herein is intended toencompass a computer program accessible from any computer-readabledevice, carrier, or media. For example, computer readable media caninclude but are not limited to magnetic storage devices (e.g., harddisk, floppy disk, magnetic strips . . . ), optical disks (e.g. compactdisk (CD), digital versatile disk (DVD) . . . ), smart cards, and flashmemory devices (e.g., card, stick). Additionally it should beappreciated that a carrier wave can be employed to carrycomputer-readable electronic data such as those used in transmitting andreceiving electronic mail or in accessing a network such as the Internetor a local area network (LAN). Of course, those skilled in the art willrecognize many modifications may be made to this configuration withoutdeparting from the scope or spirit of the claimed subject matter.

What has been described above includes examples of aspects of theclaimed subject matter. It is, of course, not possible to describe everyconceivable combination of components or methodologies for purposes ofdescribing the claimed subject matter, but one of ordinary skill in theart may recognize that many further combinations and permutations of thedisclosed subject matter are possible. Accordingly, the disclosedsubject matter is intended to embrace all such alterations,modifications and variations that fall within the spirit and scope ofthe appended claims. Furthermore, to the extent that the terms“includes,” “has” or “having” are used in either the detaileddescription or the claims, such terms are intended to be inclusive in amanner similar to the term “comprising” as “comprising” is interpretedwhen employed as a transitional word in a claim.

1. A user interface for a mobile device facilitating surfacing ofcontent available through the mobile device, comprising: an interfacecomponent that obtains the content; a tile space component that managesa plurality of tiles dynamically updated based at least in part on thecontent and the plurality of tiles positioned within a tile space,wherein the tile space component includes a profile component thatmanages at least one user profile and the plurality of tiles areselected from a set of available tiles based at least in part on the atleast one user profile; and a display component that displays a view ofthe tile space.
 2. The user interface of claim 1, wherein the pluralityof tiles includes an application tile that provides a link to a softwareapplication.
 3. The user interface of claim 1, wherein the content islocal to the mobile device.
 4. The user interface of claim 1, whereinthe plurality of tiles includes an independent tile that providesfunctionality independent of other mobile device applications.
 5. Theuser interface of claim 1, wherein the tile space is divided into aplurality of visually distinct zones.
 6. The user interface of claim 1,wherein the tile space component further comprises an available tilecomponent that manages a set of available tiles and a display tilecomponent that manages the plurality of tiles selected from the set ofavailable tiles.
 7. The user interface of claim 6, wherein the at leastone user profile is based upon one or more of a geographic location,time, and date.
 8. The user interface of claim 1, wherein the tile spacecomponent further comprises a tile position component that manages theposition of each of the plurality of tiles within the tile space.
 9. Theuser interface of claim 8, wherein the positioning of the plurality oftiles in the tile space is based at least in part on metadata associatedwith each of the plurality of tiles.
 10. The user interface of claim 8,wherein the positioning of the plurality of tiles in the tile space isbased at least in part on user input.
 11. A processor-implementedmethod, comprising: a processor generating a customizable display spacecapable of managing a plurality of dynamically updating tiles; theprocessor populating the customizable display space with the pluralityof tiles, wherein the plurality of tiles are selected from a set ofavailable tiles based at least in part on at least one user profile; anddisplaying a view of the display space on a display screen of a mobiledevice.
 12. The method of claim 11, further comprising receiving userinput and the processor navigating through the display space based atleast in part on the user input.
 13. The method of claim 12, whereinnavigating through the display space comprises panning through thedisplay space and selecting an active tile for display in a summaryview.
 14. The method of claim 13, wherein panning through the displayspace comprises wrapping from one edge of the display space to anopposite edge of the display space such that the display space forms acontinuous loop.
 15. The method of claim 12, wherein navigating throughthe display space further comprises zooming between different zoomdepths within the display space.
 16. The method of claim 11, whereindisplaying a view of the display space further comprises selecting anactive tile from the plurality of tiles and displaying an enlarged,summary view of the active tile.
 17. A system comprising a processor anda computer-readable storage device, the device storing executableinstructions that when processed by said processor cause said processorto implement the steps comprising: generating a customizable tile spacecapable of managing a plurality of tiles; populating the customizabletile space with the plurality of tiles; selecting one or more tiles froma set of available tiles based at least in part on a user profile;dynamically updating the plurality of tiles with the one or moreselected tiles based at least in part on content of the selected one ormore tiles; and displaying a view of the tile space.
 18. The system ofclaim 17, wherein said processor processes said executable instructionsto further implement the steps comprising receiving user inputnavigating through the tile space based at least in part on the userinput.
 19. The system of claim 17, wherein the user profile is basedupon one or more of a geographic location, time, and date.
 20. Thesystem of claim 17, wherein said processor processes said executableinstructions to further implement the steps comprising panning throughthe tile space and selecting a tile from the plurality of tiles for anenlarged view.